package org.finir.fakturisanje.business.test;

import java.util.List;

import org.finir.fakturisanje.business.core.GenerickiEAO;
import org.finir.fakturisanje.persistence.Faktura;
import org.finir.fakturisanje.persistence.StavkaFakture;
import org.finir.fakturisanje.persistence.beans.FakturaBean;
import org.finir.fakturisanje.persistence.beans.StavkaFaktureBean;
import org.hibernate.Session;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class HibernatePersistenceManager extends AbstractSpringTest {

	GenerickiEAO<Session> pm;

	@SuppressWarnings("unchecked")
	@BeforeTest
	public void setUpo() {

		pm = (GenerickiEAO<Session>) super.getApplicationContext()
				.getBean("persistenceManager");

	}

	@Test
	public void testLazy() {
		Faktura f = new FakturaBean();
		StavkaFakture s = new StavkaFaktureBean();
		s.setFaktura(f);

		f.getStavkeFakture().add(s);

		pm.save(f);

		List<Faktura> fakture = pm.get(Faktura.class);

		System.out.println(fakture.get(0).getStavkeFakture().size());

	}

}
